// zoj2507
// 题意：反nim博弈(取到最后一个石子算输)。
//
// 题解：用game-theory用的经典做法。就是至少有两堆大于1的堆数的时候
//       按照普通的nim状态走就行。各种讨论。
//
// run: $exec < input
#include <iostream>

int n;

int main()
{
	int T; std::cin >> T;
	while (T--) {
		std::cin >> n;
		int game = 0, count = 0;
		for (int i = 0, x; i < n; i++) {
			std::cin >> x;
			game ^= x;
			count += (x > 1);
		}
		bool first = false;
		if (!game) {
			if (!count) first = true; // count cannot be 1
			else first = false;
		} else {
			if (!count) first = false;
			else if (count == 1) first = true;
			else first = true;
		}
		if (first) std::cout << "1\n";
		else std::cout << "2\n";
	}
}

